package ru.products.common.classes;

import ru.products.common.entities.BaseParams;
import ru.products.common.interfaces.DepositBehaviour;


/**
 * Класс для Вклада
 */
public class Deposit extends BaseParams implements DepositBehaviour {

    /**
     * В следующих методах по взаимодействию с балансом возможно стоит добавить проверки на
     * неотрицательные значения у параметров 'income' и 'outcome'
     */
    public Double refill(Double income) {
        balance += income;
        return balance;
    }

    public Double checkBalance() {
        return balance;
    }

    /**
     * Метод для 'закрытия вклада'. Предположил, что метод просто обнуляет все параметры
     */
    public void close() {
        balance = null;
        name = null;
        currency = null;
        System.out.println("Your Deposit is closed");
    }

    public Deposit(String name, Double balance, String currency) {
        super(name, balance, currency);
    }
}
